﻿using System;
using Autodesk.Revit.DB;
using YJKRevitStairs.StairsModel.Manage;

namespace YJKRevitStairs.StairsModel.DataInfos
{
	public class SteelStairs : BaseCommonStairs
	{
		public SteelStairs()
		{
			base.m_sName = "钢梯";
		}

		public SteelStairs(StairsCreator Creator)
		{
			base.m_sName = "钢梯";
			this.m_StairsCreator = Creator;
		}

		public override void DrawStairs()
		{
			SteelStairsCreator steelStairsCreator = this.m_StairsCreator as SteelStairsCreator;
			if (steelStairsCreator != null)
			{
				steelStairsCreator.CreateSteelStairs(this);
			}
		}

		public FamilySymbol m_StairsType { get; set; }

		public FamilySymbol m_BeamType { get; set; }

		public bool m_bRightAngle { get; set; }

		public double m_dStairsHeight { get; set; }

		public double m_dBottomOffset { get; set; }

		public double m_dStairsAngle { get; set; }

		public double m_dStairsWidth { get; set; }

		public double m_dTreadHeight { get; set; }

		public FloorType m_FloorType { get; set; }

		public XYZ m_ptInsert { get; set; }

		public double m_dStairsLength { get; set; }

		public double m_dRailingHeight { get; set; }

		public int m_nInnerRailing { get; set; }

		public int m_nOutRailing { get; set; }

		public int m_nInsertPointIndex { get; set; }

		public XYZ m_TransVector { get; set; }

		public double m_dRotateAngle { get; set; }

		public bool m_bTBMirror { get; set; }

		public bool m_bLRMirror { get; set; }

		public string m_sFamilyName { get; set; }

		public string m_sBeamName { get; set; }

		public string m_sRvtVersion { get; set; }

		private StairsCreator m_StairsCreator;

		public SteelStairsBeamData m_BeamData = new SteelStairsBeamData();

		public LineRunData m_RunData = new LineRunData();
	}
}
